Many media entertainment systems allow users to access video-on-demand (VOD), such as pay-per-view movies. With higher compression rates, the ability to widely deploy VOD is improved, and the cost of such deployment is decreased. Digital video is encoded as a series of frames within a video stream. A frame may be either an intra-unit (or intra-frame) or a non-intra-unit (or non-intra-frame). An intra-frame is a frame that can be decoded and displayed without reference to any other frames. A non-intra-frame is a frame that contains only a portion of the data necessary to decode and display an entire image. An MPEG I-frame is an example of an intra-frame, while MPEG B-frames and P-frames are examples of non-intra-frames. When a client device (e.g., a set-top box) tunes to a particular video stream, a complete picture is not available until the set-top box receives and processes an intra-frame. In video streams encoded for traditional broadcast, an intra-frame is inserted every 0.5 seconds (or other very short interval) so that when a set-top box tunes to a channel on which the stream is being broadcast, the picture can be acquired quickly. Higher video compression, resulting in video streams with a much lower overall bitrate can be achieved by inserting fewer intra-frames at larger intervals, such as every 30 seconds.
When a viewer tunes to a channel over which digital video is being broadcast (e.g., by changing television channels), the viewer may experience a delay between the time at which the channel is selected and the time at which the broadcast video is displayed. The length of the delay is based on two factors; first, the interval between intra-frames in the broadcast digital video stream; and second, a current video stream location at the time the channel is tuned. For example, if a viewer changes channels such that when the new channel is tuned, the first frame received is an intra-frame, then there will be no delay in the display of the broadcast digital video. On the other hand, if the viewer changes channels such that when the new channel is tuned, the first frame received is not an intra-frame, then there will be a delay in the display until the next intra-frame is received. As a result, short intra-frame intervals are desired in broadcast digital video to minimize potential viewing delays.
Alternatively, when a viewer requests on-demand media content, the server can begin transmission of the requested media content with an intra-frame, thus avoiding any delay between tuning and display. As a result, long intra-frame intervals in on-demand media streams are tolerable because the distance between intra-frames in on-demand media streams is irrelevant with respect to channel acquisition delays.
A problem with longer intra-frame intervals in the delivery of on-demand video becomes evident, however, when one considers supporting control functions along with the video-on-demand. Control functions are those functions typically available in a video cassette recorder (VCR), such as fast forward, rewind, pause, etc. The channels over which video-on-demand is delivered are not capable of sending data faster when a user selects an accelerated speed, such as fast forward or rewind. To support such control functions, VOD systems implement “trick modes” of operation. A VOD server typically stores multiple video streams associated with a particular media content (e.g., a movie). One stream stores the media content running at normal speed, while other streams store the media content running at one or more other forward and/or reverse rates. In use, when a user selects an on-demand video, a VOD server begins transmitting a normal speed video stream. If a user selects a fast forward command, the VOD server begins transmitting a fast forward video stream, beginning the transmission at a location in the fast forward stream that corresponds to the current location of the normal speed stream. When the user subsequently selects a play command, the VOD server switches back to transmitting the normal speed video stream, beginning the transmission at a location in the normal speed video stream that corresponds to the current location of the fast forward stream that is being transmitted.
While long intra-frame intervals do not result in a viewing delay when on-demand media content is requested, long intra-frame intervals do adversely affect the resolution of trick mode navigation. For example, if the intra-frame intervals in a normal speed and a fast-forward speed video stream are one minute, then when a viewer wishes to fast forward, because of the interval between intra-frames, the viewer may only fast-forward to points in the stream at one minute intervals. For this reason, video streams that have longer intra-frame intervals, which provide higher video compression, and thus lower overall bitrate, do not lend themselves to systems that support control functions in conjunction with video-on-demand.